home *** CD-ROM | disk | FTP | other *** search
/ LOGIC Apps / Logic-APPLE_II_APPS.iso / pc / LOGIC Apple II 5.25" Library - DOS Part 7 / DOS207.dsk / PRINT TELEPHONE LIST NO BLANKS.bas < prev    next >
BASIC Source File  |  2012-02-16  |  4KB  |  111 lines

  1. 1  REM PRINT TELEPHONE LIST NO BLANKS
  2. 2  REM  COPYRIGHT 1984 DEC 7 - JIM LOW
  3. 3  REM  UPDATE 4.1  1985 DEC 1.  INCREASE LEFT MARGIN, ALLOW FOR 2ND LINE OF LONG LISTINGS
  4. 1000  HOME 
  5. 1100  VTAB (8)
  6. 1190  INVERSE 
  7. 1200  PRINT "          PRINT TELEPHONE LIST          "
  8. 1210  NORMAL 
  9. 1220  PRINT 
  10. 1230  PRINT "             COPYRIGHT 1984"
  11. 1240  PRINT "               BY JIM LOW"
  12. 2000  FOR I = 1 TO 3000: NEXT 
  13. 2100  HOME 
  14. 2102  CLEAR 
  15. 2103  DIM NL$(100)
  16. 2105 CK = 0
  17. 2110 PC = 0
  18. 2150 D$ =  CHR$(4)
  19. 2160  PRINT "THIS WILL WORK ONLY FOR ADDRESS FILES"
  20. 2162  PRINT "FORMATED WITH THE FOLLOWING PARAMETERS:"
  21. 2164  PRINT "   - RECORD LENGTH 116"
  22. 2166  PRINT "   - FIELDS/RECORD   9"
  23. 2167  PRINT : PRINT 
  24. 2200  PRINT "ENTER FILE NAME:"
  25. 2205  PRINT "   (PRESS JUST 'RETURN' TO EXIT)"
  26. 2300  INPUT N$
  27. 2301 DR = 1
  28. 2303  ONERR  GOTO 55000
  29. 2305  IF N$ = ""  THEN  PRINT : PRINT D$;"RUN DATABASE MAIN MENU,D"DR
  30. 2400  PRINT "DRIVE NUMBER:"
  31. 2500  GET DR$: PRINT DR$:D =  VAL(DR$)
  32. 2501  PRINT 
  33. 2510  IF D <1  OR D >2  THEN 2400
  34. 2515  ONERR  GOTO 50000
  35. 2520  PRINT D$;"VERIFY "N$",D"D
  36. 2700  PRINT D$;"OPEN X."N$",D"D
  37. 2800  PRINT D$;"READ X."N$
  38. 2900  INPUT A: INPUT F: INPUT R
  39. 3000  DIM LF(F),F$(F),DA$(F,25)
  40. 3100  FOR I = 1 TO F: INPUT LF(I): INPUT F$(I): NEXT 
  41. 3200  PRINT D$;"CLOSE"
  42. 4000  HOME 
  43. 4010  PRINT "FILE NAME:  "N$
  44. 4020  PRINT 
  45. 4030  PRINT "RECORD LENGTH =            ";A
  46. 4040  PRINT "NUMBER OF RECORDS =        ";R
  47. 4050  PRINT "FIELDS / RECORD =          ";F
  48. 4060  PRINT : PRINT "FIELD NAMES AND LENGTHS ARE:"
  49. 4070  FOR I = 1 TO F
  50. 4080 LF$ =  STR$(LF(I))
  51. 4090  IF LF$ = "0"  THEN LF$ = "VARIABLE"
  52. 5000  IF LF(I) = (A)  THEN LF$ = "VARIABLE"
  53. 5010  PRINT "   ";I".  ";F$(I);", ";LF$
  54. 5020  NEXT 
  55. 5022  IF A < >116  AND F < >9  THEN  PRINT  CHR$(7): PRINT "NOT A VALID ADDRESS RECORD.": PRINT "PRESS 'RETURN'": GET X$: PRINT : GOTO 2102
  56. 5030  PRINT : PRINT : PRINT "PRESS RETURN WHEN READY TO PRINT."
  57. 5040  INPUT X$
  58. 5050  HOME 
  59. 20080 Y$ = ""
  60. 20085 Z = 0
  61. 20086 X$ = "Y"
  62. 20087  PRINT : PRINT "ENTER PRINTER SLOT NUMBER: ";: GET SN$: PRINT SN$
  63. 20089  IF SN$ <"0"  OR SN$ >"7"  THEN  PRINT : GOTO 20087
  64. 20091 SN =  VAL(SN$): IF SN < >1  AND SN < >4  THEN  PRINT "PRINTER SLOT IS NORMALLY 1 OR 4.": PRINT "ARE YOU SURE YOU WANT SLOT ";SL;"?(Y/N)": GET X$: PRINT X$
  65. 20093  IF X$ = "Y" GOTO 20100
  66. 20095  GOTO 20087
  67. 20100  PRINT : PRINT "ENTER HEADING:"
  68. 20110  INPUT H$
  69. 20115  PRINT D$;"PR#"SN: PRINT H$: PRINT : PRINT D$;"PR#0"
  70. 20120 Z = Z +2
  71. 20145 LX = A +F +1
  72. 20147  PRINT 
  73. 20148 RR = 0
  74. 20150  PRINT D$;"OPEN "N$",L"LX",D"D
  75. 20155  FOR J1 = 1 TO 25:RR = RR +1:J2 = J1
  76. 20160  PRINT D$;"READ "N$",R"RR
  77. 20170  FOR J = 1 TO F: INPUT DA$(J,J1): NEXT 
  78. 20180  IF RR = R  THEN J1 = 25
  79. 20200  NEXT 
  80. 21000  REM 
  81. 22000  IF RR <26  THEN  PRINT D$;"PR#"SN: PRINT  CHR$(27);"P"; CHR$(1); CHR$(15);
  82. 22080  FOR J1 = 1 TO J2
  83. 22092 X =  LEN(DA$(1,J1)) + LEN(DA$(2,J1)) + LEN(DA$(4,J1)) + LEN(DA$(5,J1)) + LEN(DA$(6,J1)) + LEN(DA$(7,J1)) + LEN(DA$(9,J1))
  84. 22100  PRINT  SPC( 10);DA$(8,J1);
  85. 22110  PRINT  SPC( 18 -( LEN(DA$(8,J1))));DA$(1,J1);
  86. 22120  PRINT ", ";DA$(2,J1);
  87. 22130  PRINT ".   ";DA$(4,J1);
  88. 22140  PRINT ", ";DA$(5,J1);
  89. 22145  IF X >90  THEN  PRINT : PRINT  SPC( 50);:Z = Z +1
  90. 22150  PRINT ", ";DA$(6,J1);
  91. 22160  PRINT ", ";DA$(7,J1);
  92. 22170  PRINT ".  ";DA$(9,J1)
  93. 22175 Y$ =  LEFT$(DA$(1,J1),1)
  94. 22180 Z = Z +1
  95. 22190  IF Z >55  THEN  PRINT  CHR$(12):Z = 0
  96. 22200  NEXT 
  97. 22220 Y$ =  LEFT$(DA$(1,J2),1)
  98. 22300  IF RR <R  THEN 20155
  99. 25000  PRINT D$;"CLOSE"
  100. 25400  PRINT  CHR$(18)
  101. 25500  PRINT D$;"PR#0"
  102. 30000  GOTO 2100
  103. 49000  END 
  104. 50000 X =  PEEK(222)
  105. 50010  IF X = 6  THEN  PRINT "FILE NOT FOUND.": PRINT "ENTER A 'T' FILE NOT STARTING WITH 'X.'": PRINT D$"CATALOG": PRINT : GOTO 2200
  106. 50020  PRINT "ERROR #";X
  107. 50021  PRINT D$;"PR#0"
  108. 50022  GOTO 2102
  109. 55000 X =  PEEK(222)
  110. 55010  IF X = 6  THEN DR = 2/DR: GOTO 2305
  111. 55020  GOTO 50020